﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace AplicacaoReserva.AgenciaForms
{
    public partial class EditAgenciaForm : Form
    {

        private String agencia = MDIPrincipal.nomeAgencia;
        private string codAgencia;

        public EditAgenciaForm()
        {
            InitializeComponent();
        }

        private void btnCancel_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void EditAgenciaForm_Load(object sender, EventArgs e)
        {
            try
            {
                AgenciaServiceReference.WCFAgenciaClient agencias = new AgenciaServiceReference.WCFAgenciaClient();
                AgenciaServiceReference.Agencia agenciaToEdit = agencias.getByName(this.agencia);

                agencias.Close();

                txtAgenciaNome.Text = agenciaToEdit.nome;
                txtAgenciaMorada.Text = agenciaToEdit.morada;
                txtAgenciaCodPostal.Text = agenciaToEdit.codPostal;
                txtAgenciaLocalidade.Text = agenciaToEdit.localidade;
                txtAgenciaTelefone.Text = agenciaToEdit.telefone;
                txtAgenciaMail.Text = agenciaToEdit.email;
                txtAgenciaResp.Text = agenciaToEdit.responsavel;
                codAgencia = agenciaToEdit.codAgencia;
            }
            catch (Exception ex)
            {
                MessageBox.Show("Occoreu um erro:\n" + ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

        private void btnAgenciaEdit_Click(object sender, EventArgs e)
        {
            try
            {
                AgenciaServiceReference.WCFAgenciaClient agencias = new AgenciaServiceReference.WCFAgenciaClient();
                AgenciaServiceReference.Agencia agenciaToUpdate = new AgenciaServiceReference.Agencia();

                agenciaToUpdate.nome = txtAgenciaNome.Text;
                agenciaToUpdate.morada = txtAgenciaMorada.Text;
                agenciaToUpdate.codPostal = txtAgenciaCodPostal.Text;
                agenciaToUpdate.localidade = txtAgenciaLocalidade.Text;
                agenciaToUpdate.telefone = txtAgenciaTelefone.Text;
                agenciaToUpdate.email = txtAgenciaMail.Text;
                agenciaToUpdate.responsavel = txtAgenciaResp.Text;
                agenciaToUpdate.codAgencia = codAgencia;

                agencias.update(agenciaToUpdate);

                MessageBox.Show("Agência editada com sucesso!", "Editar Agência", MessageBoxButtons.OK, MessageBoxIcon.Information);

                this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show("Occoreu um erro:\n" + ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

    }
}